package com.sdry.system.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sdry.system.entity.SysRole;

import java.util.List;

/**
 * @description: 角色管理
 * @author: cb
 * @create: 2020-02-12 19:37
 * @version 1.0
 **/
public interface RoleService extends IService<SysRole> {

    /**
     * 角色分页
     * @param role
     * @return
     */
    IPage<SysRole> queryRolePage(SysRole role);

    /**
     * 角色添加
     * @param sysRole
     * @param menus
     * @return
     */
    Integer addRole(SysRole sysRole, String[] menus);

    /**
     * 编辑
     * @param sysRole
     * @param menus
     * @return
     */
    Integer addOrUpdateRole(SysRole sysRole, String[] menus);

    /**
     * 删除
     * @param roleId
     * @return
     */
    Integer deleteRole(Long roleId);

    /**
     * 当前角色对应的菜单
     * @param roleId
     * @return
     */
    List<Long> queryRoleMenuList(Long roleId);

    /**
     * 当前角色对应的app菜单
     * @param roleId
     * @return
     */
    List<Long> queryAppRoleMenuList(Long roleId);

    /**
     * 修改当前角色对应的app菜单
     * @param sysRole
     * @param menus
     * @return
     */
    Integer UpdateRoleAppMenu(SysRole sysRole, String[] menus);
}
